Conventional display systems utilize a graphics generator to generate image data information for display on display devices such as matrix devices, color mosaic devices, LCD devices or other raster scan display devices. The data generated by the graphics generator must be organized for use so that the image data can be scanned to permit the display of an image on a raster scanned display. One approach for sorting data elements representative of images such as pixel intensities or beam former impulses generated by the graphics generator, is the use of a full field image memory or in other words a bit-mapped technique.
With the use of a full field image memory, each picture element or pixel of an image is provided with a corresponding individual cell in the full field image memory. The image is produced by generating, for each pixel of the image, the color and intensity data or other data desired for each pixel and loading the appropriate data into the full field image memory. The image data is loaded into memory under graphics generator control and the entire full field image memory is read out in synchronism with the control circuitry generating a raster scan. The individual cells in the full field image memory may or may not correspond with the pixels of the physical display device as intervening processing between the image memory and the display device may allow the mapping to be other than one to one correspondence.
As indicated above, the full field image memory may be provided with a cell for every addressable location of the display. The x and y locations of the pixels of the display, the x address indicating the row and y address the column of a particular pixel, correspond to the addresses of the individual cells in the full field image memory and the image data elements for the pixels are stored in the individual cells as the data elements are generated by the graphics generator. A serial output for use in displaying the image represented by the data elements in the full field image memory is generated by scanning through all the addresses of the individual cells of the full field image memory in a desired x-y order. The serial output from the full field image memory is then converted to analog form and displayed.
From a hardware standpoint, this approach is unattractive because of the size of the required memory. For example, for displays of nominal size utilizing adequate color intensity levels and having adequate resolution, the memory capacities are large since every pixel has a corresponding individual memory cell. Further, for dynamic symbology, old data must be erased and new data for each pixel must be calculated and stored in the individual cells of the full-field memory repetitively. This results in a prohibitively high use of processor time and a resulting image whose update rate is unacceptably slow. For example, in a conventional system where only a small number of individual cells of the image memory are ever filled, such as a calligraphic or stroke written display, or one where polygons are represented by their outlines and filled in later by subsequent processing, there is a large waste of both image memory and processing time because all of the possible pixels have cell locations in the full field image memory and scanning the empty cell locations takes just as long as scanning full ones. It may be further appreciated that because of the necessity for rapid readout of the large full field memory, a high speed memory system often with special features such as serial ports would of necessity be utilized; such systems tend to be complex, expensive and critical in operation.
The depth of the full field image memory determines the maximum amount of image data that can be stored for any particular pixel of the display. In some image systems, such as a beamformer system as described in U.S. patent application Ser. No. 07/823,578 entitled, "Beamformer for Matrix Display", currently assigned to the assignee hereof, the data stored is in the form of impulses which are later expanded by the beamformer for display on a display device. Impulses as used herein includes not only visual data defining the image to be displayed, but also transitional data that defines the edges of shading and masking areas for the image to be displayed.
In some situations, for example, such as impulses as explained above where lines of an image intersect, it may be desirable to store more image data at a particular individual cell for a particular pixel of the display than is generally required over the majority of the individual cells. This results in an increase in size of memory for the entire image as all the individual cells of the full field image memory must be of sufficient depth to accommodate the largest amount of image data required for any individual cell anywhere in the image. An alternative to having all the individual cells being of sufficient depth to accommodate such data is to detect if an individual cell to be written is empty. If the cell is not empty, then the existing data is read and merged with the new data to be written. The merged data is then written into the cell. However, this results in an increase in processing time because to store data in a cell, the cell must be first read and the data merged prior to writing the data in the cell; thus utilizing two memory operations for all data storage instead of one operation.
Another disadvantage associated with the use of a full field image memory is related to masking. To mask data as it is written into the full field image memory, masking data must be generated and written into every location of an image plane so that a masking comparison can be done as data is generated by the graphics generator. If this must be done repetitively, i.e. moving masking, the processing time required for such generation and rewriting is prohibitive. The alternative is to make the full field image memory deep enough at each individual cell to store all of the image data that might be written for a particular pixel and mask the data during readout prior to display on a display device. However, this results in an even larger image memory than explained previously. The merging technique as explained above also does not work because it is not possible to unmerge image data which is later found to be masked.
Because of the disadvantages associated with the use of the full field image memory in sorting image data for display on a display device, a need is present for a new sorting apparatus which addresses these disadvantages. In particular, there is a need for a system which addresses these disadvantages in conjunction with a display of images where only a small number of individual cells would have data in them.